package com.example.demo.config;

import org.springframework.web.servlet.HandlerInterceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class LoginInterceptor implements HandlerInterceptor {

    //此方法返回 boolean,若为 true 表示验证成功，可以继续后续操作，反之不能
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        // 用户登录判断
        HttpSession session = request.getSession(false);
        if (session != null && session.getAttribute("userinfo") != null) {
            // 用户已经登录
            return true;
        }
        // 跳转到登录页面，或者返回一个 401/403 没有授权码
        response.sendRedirect("/login.html");
        // response.setStatus(401);
        return false;
    }
}

